package com.ruoyi.cms.service;

import java.util.List;
import com.ruoyi.cms.domain.CDisplay;
import com.ruoyi.cms.dto.DisplayLogoDTO;
import com.ruoyi.cms.dto.DisplayVideoDTO;
import com.ruoyi.cms.vo.LogoVO;
import com.ruoyi.cms.vo.VideoVO;

/**
 * 展示屏管理Service接口
 * 
 * @author Choi
 * @date 2021-08-23
 */
public interface ICDisplayService 
{
    /**
     * 取消关联视频
     * @param displayVideoDTO
     */
    void deleteDisplayVideo(DisplayVideoDTO displayVideoDTO);

    /**
     * 添加关联视频
     * @param displayVideoDTO
     */
    void addDisplayVideo(DisplayVideoDTO displayVideoDTO);

    /**
     * 获取视频
     * @param id
     * @return
     */
    List<VideoVO> getDisplayVideos(long id);

    /**
     * 修改关联
     * @param displayLogoDTO
     */
    void editDisplayLogo(DisplayLogoDTO displayLogoDTO);

    /**
     * 取消关联logo
     * @param id
     * @param logoIds
     */
    void deleteDisplayLogo(long id, long[] logoIds);

    /**
     * 关联logo
     * @param list
     */
    void addDisplayLogo(List<DisplayLogoDTO> list);

    /**
     * 获取logo
     * @param id
     * @return
     */
    List<LogoVO> getAllLogosById(long id);

    /**
     * 获取logo
     * @param id
     * @return
     */
    List<LogoVO> getLogosById(long id);

    /**
     * 查询展示屏管理
     * 
     * @param id 展示屏管理ID
     * @return 展示屏管理
     */
    public CDisplay selectCDisplayById(Long id);

    /**
     * 查询展示屏管理列表
     * 
     * @param cDisplay 展示屏管理
     * @return 展示屏管理集合
     */
    public List<CDisplay> selectCDisplayList(CDisplay cDisplay);

    /**
     * 新增展示屏管理
     * 
     * @param cDisplay 展示屏管理
     * @return 结果
     */
    public int insertCDisplay(CDisplay cDisplay);

    /**
     * 修改展示屏管理
     * 
     * @param cDisplay 展示屏管理
     * @return 结果
     */
    public int updateCDisplay(CDisplay cDisplay);

    /**
     * 批量删除展示屏管理
     * 
     * @param ids 需要删除的展示屏管理ID
     * @return 结果
     */
    public int deleteCDisplayByIds(Long[] ids);

    /**
     * 删除展示屏管理信息
     * 
     * @param id 展示屏管理ID
     * @return 结果
     */
    public int deleteCDisplayById(Long id);
}
